<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <link rel="stylesheet" href="index.css" />
    <script src="index.js"></script>
  </head>
  <body>
    测试
    <h2>GIT基本概念</h2>
    <dl>
      <dt>两大特性</dt>
      <dl>基于快照而非增量</dl>
      <dl>基本都是本地操作</dl>
    </dl>
    <h2>三个区域</h2>
    <ul>
      <li>工作区</li>
      <li>暂存区</li>
      <li>版本库</li>
    </ul>
    <h2>四种状态</h2>
    <ul>
      <li>未跟踪</li>
      <li>已修改</li>
      <li>已暂存</li>
      <li>未修改(已提交且未改变，与版本库中状态一致)</li>
    </ul>
    <h2>常用指令</h2>
    <ul>
      <li>git config --global user.name xxx</li>
      <li>git config --global user.email xxx</li>
      <li>git config --global --list 查看全局配置</li>
      <li>git config -h 查看config指令的相关说明</li>
      <li>git init 将一个文件夹初始化为git仓库</li>
      <li>git status 查看仓库文件状态</li>
      <li>
        git add 文件名/.
        将文件添加到暂存区(若文件之前未被跟踪，此时即开始被跟踪)
      </li>
      <li>git commit -m "提交说明"</li>
      <li>git commit -a -m "不经过git add直接提交文件到版本库"</li>
      <li>git reset HEAD . 移出暂存区中所有文件</li>
      <li>git rm -f 文件名 将文件从版本库和工作区中同时删除</li>
      <li>
        git rm --cached 文件名 将文件从版本库移除(git rm指令 都需要git commit
        最终生效)
      </li>
      <li>git log 查询历史提交记录(不能显示当前版本之后的版本)</li>
      <li>git reflog 查询历史提交记录(能显示所有版本)</li>
      <li>git reset --hard 版本号 切换文件到指定版本</li>
      <li>git checkout -- 文件名 将文件恢复成版本库中的最新状态</li>
      <li>git remote add origin 地址 将本地仓库和远程仓库关联起来</li>
      <li>git remote remove origin 移除本地仓库与远程仓库的关联</li>
      <li>git push -u origin master 第一次推送</li>
      <li>git push 第一次之后的推送</li>
      <li>ssh-keygen -t rsa -b 4096 -C "your_email@example.com" 生成SSH KEY</li>
      <li>ssh -T git@gitee.com 验证SSH key是否配置成功</li>
      <li>git branch 查看所有本地分支</li>
      <li>git branch 分支名 创建指定分支名的分支</li>
      <li>git checkout 分支名 切换到某个分支</li>
      <li>git checkout -b 分支名 创建并切换到该分支</li>
      <li>git merge 功能分支名</li>
      <li>git branch -d 分支名</li>
      <li>git push -u origin 分支名 第一次将某个分支推送到远程同名分支</li>
      <li>git checkout 远程分支名 跟踪分支</li>
      <li>git pull 从远程同名分支获取最新代码</li>
      <li>git remote show origin 查看所有远程分支</li>
      <li>git push origin --delete 远程分支名 删除远程分支</li>
    </ul>
  </body>
</html>
